/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package br.com.gbvbahia.vendas.report;

import br.com.gbvbahia.vendas.controllers.util.JsfUtil;
import br.com.gbvbahia.vendas.modelos.ItensPedido;
import br.com.gbvbahia.vendas.modelos.Pedido;
import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;

/**
 *
 * @author Guilherme
 */
public class DadosClienteTO  implements  Serializable{
    private String nome;
    private String telefone;
    private String rua;
    private String bairro;
    private String cidade;
    private String observacao;
    private List<ItensPedidoTO> itens;

    public DadosClienteTO() {
    }

    public void inicializarDadosClienteTO(Pedido pedido) {
        setBairro(pedido.getEnderecoEntrega().getBairro());
        setNome(pedido.getCliente().getNome());
        setTelefone(pedido.getTelefoneEntrega().getLabel());
        if (pedido.getEnderecoEntrega().getNumero() != null) {
            setRua(pedido.getEnderecoEntrega().getLogradouro().getLabel() + " "
                    + pedido.getEnderecoEntrega().getNome() + ",Número: "
                    + pedido.getEnderecoEntrega().getNumero());
        } else {
            setRua(pedido.getEnderecoEntrega().getLogradouro().getLabel() + " "
                    + pedido.getEnderecoEntrega().getNome() + ", S/N");
        }
        setCidade(pedido.getEnderecoEntrega().getCidade());
        setObservacao(pedido.getEnderecoEntrega().getComplemento());
        
        for (ItensPedido ip : pedido.getItens()) {
            ItensPedidoTO ito = new ItensPedidoTO();
            ito.setProduto(ip.getProduto().getProdNome());
            ito.setQtdade(ip.getQtd());
            ito.setTotalProduto(JsfUtil.formatCurrency(ip.getPreco() * ip.getQtd()));
            getItens().add(ito);
        }
    }

    
    
    public String getNome() {
        return nome;
    }

    public void setNome(String nome) {
        this.nome = nome;
    }

    public String getTelefone() {
        return telefone;
    }

    public void setTelefone(String telefone) {
        this.telefone = telefone;
    }

    public String getRua() {
        return rua;
    }

    public void setRua(String rua) {
        this.rua = rua;
    }

    public String getBairro() {
        return bairro;
    }

    public void setBairro(String bairro) {
        this.bairro = bairro;
    }

    public String getCidade() {
        return cidade;
    }

    public void setCidade(String cidade) {
        this.cidade = cidade;
    }

    public String getObservacao() {
        return observacao;
    }

    public void setObservacao(String observacao) {
        this.observacao = observacao;
    }

    public List<ItensPedidoTO> getItens() {
        if(itens == null){
            itens = new ArrayList<ItensPedidoTO>();
        }
        return itens;
    }

    public void setItens(List<ItensPedidoTO> itens) {
        this.itens = itens;
    }
    
    
}
